package com.dingreading.cloud.soms.service;

import com.dingreading.cloud.common.util.PageUtil;
import com.dingreading.cloud.soms.dto.CaScheduleDto;
import com.dingreading.cloud.soms.entity.CaSchedule;
import com.mybatisflex.core.paginate.Page;
import com.mybatisflex.core.service.IService;

/**
 * 服务层。
 *
 * @author Administrator
 * @since 2023-11-22
 */
public interface CaScheduleService extends IService<CaSchedule> {

    Page<CaScheduleDto> pageListV3(PageUtil pageUtil, String storeUid, String keyword, Integer status,
                                   Long classId, String className, Long roomId, String username, String projectUid, String teachDate);

    CaSchedule getSchedule(String storeUid, String scheduleUid);

    CaScheduleDto getScheduleDto(String storeUid, String scheduleUid);

    int dropBean(String storeUid, String scheduleUid);


    // 更新活动表的已活动数量
    boolean addUseLessonNum(String storeUid, String scheduleUid);

    // 更新活动表关联社团的会员数量
    boolean updateStudentNum(String storeUid, Long classId, int stuNum);

    // 更新活动表的课次数量 -1
    boolean updateLessonNum(String storeUid, String scheduleUid);
}
